package com.bcmusic.search.vo;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import java.util.Date;

/**
 * @ClassName : AuthorizationVO  //类名
 * @Description :   //描述
 * @Author : YG  //作者
 * @Date: 2020-12-05 16:43  //时间
 */
@Data
public class AuthorizationVO {

    private Integer musicId;

    @ApiModelProperty(value = "版权注册码",required = false)
    @Column(name = "authorization_code")
    private String authorizationCode;//版权注册码

    @ApiModelProperty(value = "类型，0许可，1转让，2分发",required = false)
    @Column(name = "type")
    private String type;//授权类型

    @ApiModelProperty(value = "授权类型",required = false)
    @Column(name = "allow_type")
    private String allowType;//授权类型

    @ApiModelProperty(value = "授权地域",required = false)
    @Column(name = "allow_region")
    private String allowRegion;//授权地域

    @ApiModelProperty(value = "开始时间",required = false)
    @Column(name = "authorization_start_time")
    private Date authorizationStartTime;//开始时间

    @ApiModelProperty(value = "截止时间",required = false)
    @Column(name = "authorization_end_time")
    private Date authorizationEndTime;//截止时间

    @ApiModelProperty(value = "被授权方名字",required = false)
    @Column(name = "owner_name")
    private String ownerName;//被授权方名字

    @ApiModelProperty(value = "0表示过期了，一表示正在生效，2表示还没有生效",required = false)
    @Column(name = "valid_status")
    private Integer validStatus;//0表示过期了，一表示正在生效，2表示还没有生效

    public AuthorizationVO(Integer musicId,String authorizationCode, String type, String allowType, String allowRegion, Date authorizationStartTime, Date authorizationEndTime, String ownerName, Integer validStatus) {
        this.musicId=musicId;
        this.authorizationCode = authorizationCode;
        this.type = type;
        this.allowType = allowType;
        this.allowRegion = allowRegion;
        this.authorizationStartTime = authorizationStartTime;
        this.authorizationEndTime = authorizationEndTime;
        this.ownerName = ownerName;
        this.validStatus = validStatus;
    }
}
